import { isObject } from "../shared/utils";
import { mutableHandler } from "./mutableHandler";
function reactive(target) {
    return createReactiveObject(target, mutableHandler)
}
/**
 * 创建一个响应式对象。
 * @param {Object} target - 要被代理的目标对象。
 * @param {Object} baseHandler - 代理的处理程序对象，包含拦截器。
 * @returns {Object} 返回被代理的响应式对象。
 */
function createReactiveObject(target, baseHandler) {
    if (!isObject(target)) {
        return target;
    }
    // 使用 Proxy 创建一个观察者对象
    const observer = new Proxy(target, baseHandler)
    return observer;
}

export { reactive };
